This invention relates to a method for controlling ignition timing of an internal combustion engine and an apparatus for practicing the method.
Controlling of ignition timing of an internal combustion engine using a microcomputer is carried out by measuring a time interval between signals generated from a signal generator driven by the internal combustion engine to detect an average engine speed. Then, supposing that the engine rotates at the detected engine speed; a period of time from a reference position or a position at which the signal generator generates a predetermined signal to target ignition timing which is determined by a microcomputer depending upon the engine speed, the degree of opening of a throttle or the like is determined as ignition timing measuring time which is a period of time necessary for the engine to rotate from the reference position to an ignition position. The ignition timing measuring time is set in a timer for determining ignition timing and then the timer is started at the reference position to provide an ignition device for the internal engine with an ignition signal at the time when the timer counts a predetermined period of time, leading to ignition by the ignition device.
The signal generator is generally adapted to generate a signal at a maximum advance angle position or a minimum advance angle position, however, the ignition timing is generally measured on the basis of the maximum advance angle position.
FIG. 1 shows a variation in engine speed of a two-stroke-cycle three-cylinder internal combustion engine. The engine speed of the two-stroke-cycle engine is minimized at the end of the compression stroke and maximized due to explosion at a position of 30 to 60 degrees after the ignition. Also, when the replacement of gas in the cylinder during the scavenging stroke is failed or is not satisfactorily carried out, the subsequent explosion stroke is failed, resulting in the maximum value of the engine speed being lowered. When the replacement of gas in the next scavenging stroke satisfactorily takes place, combustion is effectively carried out in the subsequent explosion stroke, so that the engine speed may be increased. Thus, the engine speed is caused to be varied at every rotation of the engine.
In order to adequately control the ignition timing, it is desirable to determine the ignition timing on the basis of the engine speed detected at time as close to each ignition timing as possible.
An ignition timing control method which has been conventionally practiced for an internal combustion engine is adapted to obtain an average engine speed of the internal combustion engine depending upon a time interval between signals fed from a signal generator, to thereby obtain ignition timing measuring time on the basis of or depending upon the so-obtained engine speed. However, the conventional method determines the ignition timing measuring time depending upon an engine speed occurring due to the last ignition but one, to thereby fail to adequately control the ignition timing.
In the conventional method, for example, as shown in FIG. 1, a period of time from time t.sub.1 immediately after one ignition to time t.sub.2 immediately after the next ignition is measured to cause an ignition timing measuring timer to be started at the time t.sub.2. Then, while the timer carries out the counting operation, an average value of the engine speed is obtained by operation based on both the period of time from the time t.sub.1 to the time t.sub.2 and the angle of rotation of the engine carried out during the period. Then, target ignition timing measuring time required for determining ignition timing at that time is operated on the basis of the so-obtained engine speed, so that the end time of the ignition timing measuring time is set in the timer. When the timer counts the end time, an ignition signal is fed to an ignition circuit, leading to the ignition operation.
As described above, the conventional method uses the engine speed occurring due to the last ignition but one as engine speed data used for determining each ignition timing, therefore, there is no correlation between each ignition timing and the engine speed data for determining it, resulting in failing to appropriately control the ignition position.